An end-to-end system architecture for supporting machine-to-machine (M2M) communication services is currently being defined by the European Telecommunications Standards Institute (ETSI) to enable M2M service providers to deliver M2M services to applications via M2M service capability layers (SCLs) deployed on wired or wireless M2M subscriber communication units (SCUs), gateways and servers. Before M2M services may be made available to applications, M2M SCUs and gateways may bootstrap and register to at least one M2M server to form an M2M network. In a typical deployment scenario, an M2M server may be owned or affiliated with an M2M service provider. Therefore, an M2M SCU or gateway may be provisioned with a subscription to an M2M service provider, or an M2M service provider may be discovered to establish a subscription to the M2M service provider. The M2M service provider subscriber may enable the M2M SCU or gateway to obtain the proper security credentials before bootstrapping and registering with an M2M server.
Once the M2M network has formed, applications may then discover available M2M SCLs residing on M2M SCUs, M2M gateways and M2M servers and, in turn, register to the M2M SCLs to access corresponding services. Without providing M2M service provider discovery, bootstrap and SCL discovery procedures, mechanisms such as offline provisioning may be used to configure and distribute bootstrap and discovery information to M2M SCUs, gateways, applications and M2M servers. However, such mechanisms may greatly increase deployment and management costs, and limit the scalability of M2M networks. As an alternative to offline provisioning, automated discovery may allow available M2M service providers and their corresponding M2M SCLs to be dynamically discovered. As a result, management costs may be reduced and the deployment process may be automated, (e.g., for M2M SCUs which may have little or no human interaction).